package com.yunsc.system.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.HashMap;
import java.util.Map;

/**
 * @version: 1.0
 * @Author: adan
 * @description:
 * @date: 2024-04-04 22:03
 */
@Api("登录参数")
@Data
public class AuthParamsDto {
    @ApiModelProperty("用户名")
    private String username; //用户名
    @ApiModelProperty(value = "用户名")
    private String password; //域  用于扩展
    @ApiModelProperty(value = "微信code")
    private Integer userid;  // 微信userid
    @JsonProperty("authType")
    private String authType; // 认证的类型   password:用户名密码模式类型    sms:短信模式类型  wechat:微信模式类型

    @ApiModelProperty(value = "手机号")
    private String mobile;//手机号
    @JsonProperty("smsCode")
    @ApiModelProperty(value = "验证码")
    private String smsCode;// sms验证码
    @JsonProperty("isParty")
    private String isParty;  // 是否存在第三方用户信息
    @JsonProperty("partyData")
    private Object partyData;  // 第三方用户信息


    //附加数据，作为扩展，不同认证类型可拥有不同的附加数据。
    // 如认证类型为短信时包含smsKey : sms:3d21042d054548b08477142bbca95cfa; 所有情况下都包含clientId
    private Map<String, Object> payload = new HashMap<>();

}
